草庐IT

python 异步操作async和await

全部标签

javascript - 使用 async/await 从回调中获取数据并仅在解决 promise 后返回值

我正在尝试使用async/await,但我认为我严重误解了一些东西。基本上,我正在尝试使用googlemapsapi计算位置列表与一个指定位置之间的距离。这是我正在尝试做的粗略示例:https://jsfiddle.net/qu5y69rj/1/您可以看到该函数的结果是undefined3次,而不是我所期望的,每次调用都是{distance:"ZERO_RESULTS"}以我人为的例子为例。getDistance=async(start,end)=>{constorigin=newgoogle.maps.LatLng(start[0],start[1]);constfinal=newg

javascript - Chrome 扩展 - 修改右键单击浏览器操作菜单

我想知道我是否可以修改浏览器操作菜单的右键菜单?我想添加一个名为“注销”的选项。 最佳答案 对于上下文,Chrome说:Valuemustbeoneof:[all,page,frame,selection,link,editable,image,video,audio,launcher,browser_action,page_action]所以用chrome.contextMenus.create({"title":"Logout","contexts":["browser_action"],"onclick":logout});其

javascript - 推特按钮脚本同步加载,需要异步加载

我在使用Twitter按钮脚本时遇到了一些问题,它阻止了页面呈现。我一直在使用的脚本如下Tweet!function(d,s,id){varjs,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");关于如何对这个排序有什么想法吗?

javascript - RequireJS 的 require 调用什么时候是异步的?什么时候同步?

我使用RequireJS在我的一个项目中加载我的模块。我在网络上看到使用require调用(而不是define)来要求模块的不同方式。假设我有一个名为“JQuery”的模块,并且我想要使用它。正如我在示例中看到的,有两种可能的方法:这个:require(["JQuery"],function($){$.doSomething();})还有这个:var$=require("JQuery");$.doSomething();我的问题是,如果负载像RequireJS文档所说的那样是异步的,那么第二个约定如何工作?我如何确定$已定义并且第一行在第二行执行之前完成?

javascript - 主干模型 - 根据 REST 操作更改 URL 查询参数

在Backbone模型中,我们有url和urlRoot属性:url:function(){return'/jobs'},urlRoot:function(){return'/jobs'},但是我想向url添加参数或查询参数,具体取决于它是GET、POST、PUT、DELETE等请求的类型。所以我想做这样的事情:url:function(type,opts){//typeandoptsargumentsarenotavailableinBackbone,Ijustmadethemupforthisexamplevarurl='/jobs';switch(type){case'GET':b

javascript - 类型错误 : task is not a function in async js parrallel

我正在尝试使用以下代码上传图像并更新数据库集合中图像的url。Controller.prototype.handle=function(req,res,next){varid=req.params.id,controller=req.params.controller,optionalController;optionalController=_.clone(controller);//handleoptionalcontrollerif(controller==='newboat'){controller='boat';}elseif(controller==='newcrew'){

javascript - 如何设置在 node.js 中运行异步函数的时间限制?

有一个异步函数fun(param,callback)是这样的:fun(param,function(err){if(err)console.log(err);doSomething();});如何设置运行此功能的时间限制?例如,我将时间限制设置为10秒。如果在10秒内完成,则没有错误。如果它运行超过10秒,则终止它并显示错误。 最佳答案 Promises是这种行为的理想选择,您可以拥有类似的东西:newPromise(function(resolve,reject){asyncFn(param,function(err,result

javascript - 将异步添加到返回 promise 的函数有什么好处?

在这里预置异步有什么好处?asyncfunctionasyncFunc(){returnnewPromise(function(resolve,reject){});} 最佳答案 async的唯一好处是作为函数将(始终)返回一个promise的视觉标记,您甚至不必扫描函数体来查找return声明。如果您有一行asyncfunction,它可能对一致性很有用。除此之外:它的好处绝对为零。这与将返回值包装在额外的Promise.resolve()调用中一样好。如果您的函数体仅包含带有promise(新promise或其他函数调用)的re

javascript - jQuery 是如何完成它的异步动画的?

...或者更具体地说,他们如何通过同步的javascript创建动画,而无需等待下一个javascript语句。这只是一种好奇。他们使用的是setTimeout()链吗?如果是这样,它们是否设置得早,每个持续时间都比前一个稍长,并且平行运行?或者它们是通过递归函数调用创建的,因此是串联运行的?还是完全不同的东西? 最佳答案 有一个名为setInterval()的setTimeout()替代方法,它会定期调用您作为参数传递的函数。调用setInterval将返回一个值,该值可以传递给clearInterval以停止调用该函数。

javascript - 使用 async/await promise 的 Node 回调

我正在尝试编写一个简单的函数,将Node样式的回调函数转换为Promise,以便我可以将它们与async/await一起使用。当前代码:functiontoPromise(ctx,func,...args){letnewPromise;args.push((err,res)=>{newPromise=newPromise((resolve,reject)=>{if(err)reject(err);else{resolve(res)};});});func.apply(ctx,args);returnnewPromise;}示例用法:constmatch=awaittoPromise(u